ã³ãŒãã¬ãã¥ãŒã«ãããèªåãã§ãã¯ã®åãæ¢ããŸããããéããå¹ççãªãœãããŠã§ã¢éçºãšå質åäžãå®çŸãéçè§£æããªã³ã¿ãŒãã»ãã¥ãªãã£ã¹ãã£ã³ãã°ããŒãã«ããŒã ã®ããã®ãã¹ããã©ã¯ãã£ã¹ãåŠã³ãŸãããã
ã³ãŒãã¬ãã¥ãŒïŒèªåãã§ãã¯ã«ãããœãããŠã§ã¢åè³ªã®æé©å
ã³ãŒãã¬ãã¥ãŒã¯ãé«å質ãªãœãããŠã§ã¢éçºã®ç€ã§ãããœãŒã¹ã³ãŒããäœç³»çã«èª¿æ»ããŠãæœåšçãªãã°ãã»ãã¥ãªãã£ã®è匱æ§ãæ¹åç¹ãç¹å®ããäœæ¥ãå«ãŸããŸããæåã«ããã³ãŒãã¬ãã¥ãŒã¯ããã®åŸ®åŠãªæŽå¯åããéåžžã«äŸ¡å€ããããŸãããæéãããããäžè²«æ§ã«æ¬ ããå ŽåããããŸããããã§ç»å Žããã®ãèªåãã§ãã¯ã§ãããããã»ã¹ãè£åŒ·ããå ç¢ãªã»ãŒããã£ããããæäŸããŸãã
ã³ãŒãã¬ãã¥ãŒã«ãããèªåãã§ãã¯ãšã¯ïŒ
èªåãã§ãã¯ã¯ããœãããŠã§ã¢ããŒã«ã掻çšããŠãäºåã«å®çŸ©ãããã«ãŒã«ãåºæºã«ç §ãããŠã³ãŒããåæããŸãããããã®ããŒã«ã¯ãåçŽãªæ§æãšã©ãŒããè€éãªã»ãã¥ãªãã£äžã®æ¬ é¥ãŸã§ãå¹ åºãåé¡ãæ€åºã§ããã³ãŒãããã¹ããã©ã¯ãã£ã¹ããããžã§ã¯ãåºæã®ã¬ã€ãã©ã€ã³ã«æºæ ããŠããããšãä¿èšŒããŸãããããã¯ç¬¬äžã®é²åŸ¡ç·ãšããŠæ©èœãã人éã®ã¬ãã¥ãŒæ åœè ãã³ãŒããèŠãåã«ãäžè¬çãªåé¡ãé€å€ããŸãã
èªåãã§ãã¯ã®ã¡ãªãã
- å¹çã®åäžïŒ èªåãã§ãã¯ã«ããã人éã®ã¬ãã¥ãŒæ åœè ã¯ãã¢ãŒããã¯ãã£èšèšãå šäœçãªã³ãŒãããžãã¯ãªã©ãããè€éã§æŠç¥çãªåé¡ã«éäžã§ããããã«ãªããŸããæ¥åžžçãªãšã©ãŒãè¿ éã«çºèŠããæåã¬ãã¥ãŒã«è²»ããæéãåæžããŸãã
- ã³ãŒãå質ã®åäžïŒ ã³ãŒãã£ã³ã°èŠçŽã匷å¶ããæœåšçãªãã°ãæ©æã«æ€åºããããšã§ãèªåãã§ãã¯ã¯ããé«å質ãªã³ãŒãã«è²¢ç®ããŸããã«ãŒã«ãäžè²«ããŠé©çšããããšã§ãããåäžã§ä¿å®ããããã³ãŒãããŒã¹ãå®çŸããŸãã
- ãšã©ãŒãªã¹ã¯ã®äœæžïŒ èªåããŒã«ã¯ãç¹ã«å€§èŠæš¡ãŸãã¯è€éãªã³ãŒãããŒã¹ã«ãããŠã人éã®ã¬ãã¥ãŒæ åœè ãèŠéããã¡ãªæœåšçãªãšã©ãŒãç¹å®ã§ããŸãããã®ç©æ¥µçãªã¢ãããŒãã«ããããã°ãæ¬çªç°å¢ã«å°éãããªã¹ã¯ãäœæžããŸãã
- ã»ãã¥ãªãã£ã®åŒ·åïŒ ã»ãã¥ãªãã£ã¹ãã£ã³ããŒã«ã¯ãSQLã€ã³ãžã§ã¯ã·ã§ã³ãã¯ãã¹ãµã€ãã¹ã¯ãªããã£ã³ã°ïŒXSSïŒããããã¡ãªãŒããŒãããŒãªã©ã®äžè¬çãªè匱æ§ãæ€åºããã¢ããªã±ãŒã·ã§ã³ãæªæã®ããæ»æããä¿è·ããã®ã«åœ¹ç«ã¡ãŸãã
- äžè²«ããã³ãŒãã£ã³ã°ã¹ã¿ã€ã«ïŒ ãªã³ã¿ãŒã¯ãã³ãŒããäžè²«ããã¹ã¿ã€ã«ã¬ã€ãã«æºæ ããŠããããšãä¿èšŒããå¯èªæ§ãåäžãããæåã¬ãã¥ãŒäžã®ã¹ã¿ã€ã«ã«é¢ããè°è«ã®å¯èœæ§ãæžãããŸãã
- ãã£ãŒãããã¯ã«ãŒãã®é«éåïŒ èªåãã§ãã¯ã¯CI/CDãã€ãã©ã€ã³ã«çµ±åã§ããéçºè ã«ã³ãŒã倿Žã«é¢ãã峿ã®ãã£ãŒãããã¯ãæäŸããŸããããã«ãããåé¡ãè¿ éã«ä¿®æ£ããããéãååŸ©äœæ¥ãè¡ãããšãã§ããŸãã
- ã¹ã±ãŒã©ããªãã£ïŒ ã³ãŒãããŒã¹ãæé·ããããŒã ãæ¡å€§ããã«ã€ããŠãã³ãŒãã®å質ãšäžè²«æ§ãç¶æããããã«èªåãã§ãã¯ã¯ãŸããŸãäžå¯æ¬ ã«ãªããŸããå€§èŠæš¡ãªãããžã§ã¯ãå šäœã§ã³ãŒãã¬ãã¥ãŒã管çããããã®ã¹ã±ãŒã©ãã«ãªãœãªã¥ãŒã·ã§ã³ãæäŸããŸãã
èªåãã§ãã¯ã®çš®é¡
ã³ãŒãã¬ãã¥ãŒããã»ã¹ã«ã¯ãããã€ãã®çš®é¡ã®èªåãã§ãã¯ãçµã¿èŸŒãããšãã§ãããããããã³ãŒãå質ãšã»ãã¥ãªãã£ã®ç°ãªãåŽé¢ã«å¯Ÿå¿ããŠããŸãã
1. éçè§£æ
éçè§£æããŒã«ã¯ããœãŒã¹ã³ãŒããå®è¡ããã«èª¿æ»ãããã¿ãŒã³ãã«ãŒã«ã«åºã¥ããŠæœåšçãªåé¡ãç¹å®ããŸããæ¬¡ã®ãããªåé¡ãæ€åºã§ããŸãïŒ
- nullãã€ã³ã¿ã®éåç §ïŒ nullãã€ã³ã¿ãä»ããŠã¡ã¢ãªãã±ãŒã·ã§ã³ã«ã¢ã¯ã»ã¹ããããšããããšã
- ã¡ã¢ãªãªãŒã¯ïŒ å²ãåœãŠãããã¡ã¢ãªãè§£æŸãå¿ããæéãšãšãã«ããã©ãŒãã³ã¹ãäœäžããããšã
- æªåæå倿°ïŒ å€ãå²ãåœãŠãããåã«å€æ°ã䜿çšããããšã
- ãããã³ãŒãïŒ æ±ºããŠå®è¡ãããªãã³ãŒãã§ãæœåšçãªãšã©ãŒãäžèŠãªè€éãã瀺åãããã®ã
- ã³ãŒãã®èãïŒ ã³ãŒãã®èšèšãå®è£ ã«ãããæ ¹æ¬çãªåé¡ã瀺åãããã¿ãŒã³ã
äŸïŒéçè§£æããŒã«ã¯ã倿°ã宣èšããããã®ã®ãèšç®ã§äœ¿çšãããåã«åæåãããŠããªãJavaã³ãŒãã«ãã©ã°ãç«ãŠãããšããããŸãã
2. ãªã³ã¿ãŒ
ãªã³ã¿ãŒã¯ã³ãŒãã£ã³ã°ã¹ã¿ã€ã«ã¬ã€ãã匷å¶ããã³ãŒããäžè²«ãã圢åŒãšæ§é ã«æºæ ããŠããããšãä¿èšŒããŸããæ¬¡ã®ãããªåé¡ãæ€åºã§ããŸãïŒ
- ã€ã³ãã³ããšã©ãŒïŒ äžè²«æ§ã®ãªãããŸãã¯èª€ã£ãã€ã³ãã³ãã§ãã³ãŒããèªã¿ã«ãããªããã®ã
- åœåèŠåïŒ å€æ°ã颿°ãã¯ã©ã¹ã®åœåèŠåéåã
- è¡ã®é·ãïŒ æå®ãããé·ããè¶ ããè¡ã§ãå¯èªæ§ãäœäžããããã®ã
- æªäœ¿çšã®å€æ°ïŒ 宣èšãããŠãããäžåºŠã䜿çšãããªã倿°ã
- æ«å°Ÿã®ç©ºçœïŒ è¡ã®çµããã«ããäžèŠãªç©ºçœã
äŸïŒãªã³ã¿ãŒã¯ãã€ã³ãã³ããäžè²«ããŠããªãããŸãã¯PEP 8ã¹ã¿ã€ã«ã¬ã€ãã«éåããŠããPythonã³ãŒãã«ãã©ã°ãç«ãŠãããšããããŸãã
3. ã»ãã¥ãªãã£ã¹ãã£ã³
ã»ãã¥ãªãã£ã¹ãã£ã³ããŒã«ã¯ãã³ãŒãå ã®æœåšçãªè匱æ§ãç¹å®ããã¢ããªã±ãŒã·ã§ã³ãæ»æããä¿è·ããã®ã«åœ¹ç«ã¡ãŸããæ¬¡ã®ãããªåé¡ãæ€åºã§ããŸãïŒ
- SQLã€ã³ãžã§ã¯ã·ã§ã³ïŒ æ»æè ãä»»æã®SQLã³ãã³ããå®è¡ã§ããããã«ããããšã
- ã¯ãã¹ãµã€ãã¹ã¯ãªããã£ã³ã°ïŒXSSïŒïŒ æ»æè ãWebããŒãžã«æªæã®ããã¹ã¯ãªãããæ³šå ¥ã§ããããã«ããããšã
- ã¯ãã¹ãµã€ããªã¯ãšã¹ããã©ãŒãžã§ãªïŒCSRFïŒïŒ æ»æè ãæ£èŠã®ãŠãŒã¶ãŒã«ä»£ãã£ãŠã¢ã¯ã·ã§ã³ãå®è¡ã§ããããã«ããããšã
- ãããã¡ãªãŒããŒãããŒïŒ å²ãåœãŠãããã¡ã¢ãªãããã¡ãè¶ ããŠæžã蟌ã¿ãã¯ã©ãã·ã¥ãã»ãã¥ãªãã£äŸµå®³ã«ã€ãªããå¯èœæ§ãããããšã
- å®å šã§ãªãäŸåé¢ä¿ïŒ æ¢ç¥ã®è匱æ§ãæã€ãµãŒãããŒãã£ã©ã€ãã©ãªã䜿çšããããšã
äŸïŒã»ãã¥ãªãã£ã¹ãã£ãã¯ããŠãŒã¶ãŒå ¥åãSQLã¯ãšãªã§äœ¿çšããåã«é©åã«ãµãã¿ã€ãºããŠããªãPHPã³ãŒãã«ãã©ã°ãç«ãŠãSQLã€ã³ãžã§ã¯ã·ã§ã³ã«å¯ŸããŠè匱ã§ããããšãææããå ŽåããããŸãã
4. ã³ãŒãè€é床解æ
ã³ãŒãè€é床解æããŒã«ã¯ã埪ç°çè€é床ãèªç¥çè€é床ãªã©ã®ææšã«åºã¥ããŠã³ãŒãã®è€éåºŠãæž¬å®ããŸããè€é床ãé«ããšãã³ãŒããçè§£ããã¹ããä¿å®ãã«ããããšã瀺ããŠããå¯èœæ§ããããŸãã
- 埪ç°çè€éåºŠïŒ ããã°ã©ã ãéãç·åœ¢ç¬ç«ãªãã¹ã®æ°ã枬å®ããŸããæ°å€ãé«ãã»ã©ãå¶åŸ¡ãããŒãè€éã§ããããšã瀺ããŸãã
- èªç¥çè€éåºŠïŒ ã³ãŒãã®äžéšãçè§£ããããã«å¿ èŠãªç²Ÿç¥çåŽåãæž¬å®ããŸãã埪ç°çè€é床ããã人éã«ãšã£ãŠèªã¿ãããããšãç®æããŠããŸãã
äŸïŒã³ãŒãè€é床解æããŒã«ã¯ã埪ç°çè€é床ã®é«ã颿°ã«ãã©ã°ãç«ãŠãããå°ãã管çãããã颿°ã«ãªãã¡ã¯ã¿ãªã³ã°ãã¹ãããšã瀺åããå ŽåããããŸãã
5. ãã¹ãã«ãã¬ããžè§£æ
ãã¹ãã«ãã¬ããžè§£æããŒã«ã¯ãã³ãŒããåäœãã¹ãã«ãã£ãŠã©ã®çšåºŠã«ããŒãããŠããããæž¬å®ããŸããè¡ã«ãã¬ããžãåå²ã«ãã¬ããžããã¹ã«ãã¬ããžãªã©ã®ææšãæäŸããŸãã
- è¡ã«ãã¬ããžïŒ ãã¹ãã«ãã£ãŠå®è¡ãããã³ãŒãè¡ã®å²åã
- åå²ã«ãã¬ããžïŒ ãã¹ãã«ãã£ãŠå®è¡ãããåå²ïŒäŸïŒif/elseæïŒã®å²åã
- ãã¹ã«ãã¬ããžïŒ ãã¹ãã«ãã£ãŠã«ããŒãããå¯èœæ§ã®ããå®è¡ãã¹ã®å²åã
äŸïŒãã¹ãã«ãã¬ããžè§£æããŒã«ã¯ãç¹å®ã®é¢æ°ã®è¡ã«ãã¬ããžãäœãããšãæããã«ãããããååã«ãã¹ããããŠããããæªæ€åºã®ãã°ãå«ãŸããŠããå¯èœæ§ãããããšã瀺ããŸãã
èªåãã§ãã¯ãã¯ãŒã¯ãããŒã«çµ±åãã
èªåãã§ãã¯ã®ã¡ãªãããæå€§éã«åŒãåºãã«ã¯ãéçºã¯ãŒã¯ãããŒã«ã·ãŒã ã¬ã¹ã«çµ±åããããšãäžå¯æ¬ ã§ãã以äžã«ã¹ããããã€ã¹ãããã®ã¬ã€ãã瀺ããŸãïŒ
1. é©åãªããŒã«ãéžæãã
ããã°ã©ãã³ã°èšèªããã¬ãŒã ã¯ãŒã¯ããããžã§ã¯ãèŠä»¶ã«é©ããããŒã«ãéžæããŸãã以äžã®èŠçŽ ãèæ ®ããŠãã ããïŒ
- èšèªãµããŒãïŒ ããŒã«ããããžã§ã¯ãã§äœ¿çšãããŠããèšèªããµããŒãããŠããããšã確èªããŸãã
- ã«ãŒã«ã®ã«ã¹ã¿ãã€ãºïŒ ã«ãŒã«ãã«ã¹ã¿ãã€ãºããã³ãŒãã£ã³ã°èŠçŽã«åãããŠèšå®ã§ããããŒã«ãæ¢ããŸãã
- çµ±åïŒ IDEãCI/CDãã€ãã©ã€ã³ãã³ãŒããªããžããªãªã©ãæ¢åã®éçºç°å¢ãšé©åã«çµ±åã§ããããŒã«ãéžæããŸãã
- ã¬ããŒãïŒ ããŒã«ãæœåšçãªåé¡ã匷調ããæç¢ºã§æçãªã¬ããŒããæäŸããããšã確èªããŸãã
- ããã©ãŒãã³ã¹ïŒ ããŒã«ãéçºã¯ãŒã¯ãããŒã«äžããããã©ãŒãã³ã¹ãžã®åœ±é¿ãèæ ®ããŸãã
人æ°ã®ããèªåãã§ãã¯ããŒã«ã«ã¯æ¬¡ã®ãããªãã®ããããŸãïŒ
- SonarQubeïŒ ã³ãŒãå質ãç¶ç¶çã«æ€æ»ããããã®å æ¬çãªãã©ãããã©ãŒã ã
- ESLintïŒ JavaScriptããã³JSXçšã®ãªã³ã¿ãŒã
- PMDïŒ JavaãJavaScriptãApexããã®ä»ã®èšèªçšã®éçè§£æããŒã«ã
- FindBugsïŒ Javaçšã®éçè§£æããŒã«ã
- OWASP ZAPïŒ Webã¢ããªã±ãŒã·ã§ã³çšã®ã»ãã¥ãªãã£ã¹ãã£ãã
- BanditïŒ Pythonçšã®ã»ãã¥ãªãã£ã¹ãã£ãã
- CheckstyleïŒ ããã°ã©ããã³ãŒãã£ã³ã°èŠçŽã«æºæ ããJavaã³ãŒããæžãã®ãæ¯æŽããéçºããŒã«ã
2. ã«ãŒã«ãšåºæºãèšå®ãã
ã³ãŒãã£ã³ã°èŠçŽãå®çŸ©ããããã匷å¶ããããã«èªåãã§ãã¯ããŒã«ãèšå®ããŸããããã«ã¯ã以äžã®ã«ãŒã«ã®èšå®ãå«ãŸããŸãïŒ
- åœåèŠåïŒ å€æ°ã颿°ãã¯ã©ã¹ã®åœåæ¹æ³ã
- ã€ã³ãã³ãïŒ ã³ãŒãã®ã€ã³ãã³ãæ¹æ³ã
- è¡ã®é·ãïŒ ã³ãŒãè¡ã®æå€§é·ã
- ã³ãŒãã®è€éåºŠïŒ é¢æ°ãã¡ãœããã®èš±å®¹æå€§è€é床ã
- ã»ãã¥ãªãã£ã®è匱æ§ïŒ æ¢ãã¹ãæ¢ç¥ã®ã»ãã¥ãªãã£äžã®æ¬ é¥ã
ãããžã§ã¯ãã®ã«ãŒã«ãæå®ããèšå®ãã¡ã€ã«ãäœæããŸãããã®ãã¡ã€ã«ãã³ãŒããªããžããªã«ä¿åããŠãç°¡åã«å ±æããã³æŽæ°ã§ããããã«ããŸãã
3. CI/CDãã€ãã©ã€ã³ãšçµ±åãã
èªåãã§ãã¯ãCI/CDãã€ãã©ã€ã³ã«çµ±åããŠã倿Žãè¡ããããã³ã«ã³ãŒããèªåçã«ãã§ãã¯ãããããã«ããŸããããã¯ãèªåãã§ãã¯ããŒã«ãå®è¡ããåé¡ãå ±åããã¹ãããããã«ãããã»ã¹ã«è¿œå ããããšã§å®çŸã§ããŸãã
é倧ãªåé¡ãæ€åºãããå Žåã«ãã«ãã倱æããããã«CI/CDãã€ãã©ã€ã³ãèšå®ããŸããããã«ãããæ·±å»ãªåé¡ã®ããã³ãŒããæ¬çªç°å¢ã«ãããã€ãããã®ãé²ããŸãã
4. éçºè ã«ãã£ãŒãããã¯ãæäŸãã
éçºè ãèªåãã§ãã¯ã«ãã£ãŠæ€åºãããåé¡ã«ã€ããŠãã¿ã€ã ãªãŒã§æçãªãã£ãŒãããã¯ãåãåããããã«ããŸããããã¯ãæ¬¡ã®æ¹æ³ã§è¡ãããšãã§ããŸãïŒ
- IDEã«çµæã衚瀺ããïŒ èªåãã§ãã¯ããŒã«ãIDEã«çµ±åããéçºè ãã³ãŒããæžããªããåé¡ã確èªã§ããããã«ããŸãã
- éç¥ãéä¿¡ããïŒ CI/CDãã€ãã©ã€ã³ã§åé¡ãæ€åºãããå Žåãéçºè ã«ã¡ãŒã«ããã£ããã§éç¥ãéä¿¡ããŸãã
- ã¬ããŒããäœæããïŒ èªåãã§ãã¯ã®çµæãèŠçŽããæ¹åç¹ã匷調ããã¬ããŒããçæããŸãã
éçºè ã«åé¡ãè¿ éã«ä¿®æ£ããããä¿ããäžè¬çãªåé¡ã®è§£æ±ºæ¹æ³ã«é¢ããã¬ã€ãã³ã¹ãæäŸããŸãã
5. ç¶ç¶çã«æ¹åãã
èªåãã§ãã¯ã®çµæã宿çã«ã¬ãã¥ãŒããã«ãŒã«ãåºæºãæ¹åã§ããé åãç¹å®ããŸããããã«ã¯ä»¥äžãå«ãŸããŸãïŒ
- æ°ããã«ãŒã«ã远å ããïŒ æ°ããè匱æ§ããã¹ããã©ã¯ãã£ã¹ã«ã€ããŠåŠãã ããèªåãã§ãã¯ããŒã«ã«æ°ããã«ãŒã«ã远å ããŸãã
- æ¢åã®ã«ãŒã«ã調æŽããïŒ æ¢åã®ã«ãŒã«ã埮調æŽããŠã誀æ€ç¥ãæžããã粟床ãåäžãããŸãã
- äŸåé¢ä¿ãæŽæ°ããïŒ èªåãã§ãã¯ããŒã«ãšãã®äŸåé¢ä¿ãææ°ã®ç¶æ ã«ä¿ã¡ãææ°ã®ã»ãã¥ãªãã£ããããšãã¹ããã©ã¯ãã£ã¹ã䜿çšããŠããããšã確èªããŸãã
èªåãã§ãã¯ã®æå¹æ§ãç¶ç¶çã«ç£èŠããæå€§éã®äŸ¡å€ãæäŸããŠããããšã確èªããããã«å¿ èŠã«å¿ããŠèª¿æŽãè¡ããŸãã
èªåã³ãŒãã¬ãã¥ãŒã®ãã¹ããã©ã¯ãã£ã¹
èªåã³ãŒãã¬ãã¥ãŒãæå€§éã«æŽ»çšããã«ã¯ã次ã®ãã¹ããã©ã¯ãã£ã¹ãæ€èšããŠãã ããïŒ
- æ©æã«éå§ããïŒ éçºããã»ã¹ã®æ©ã段éãçæ³çã«ã¯ãããžã§ã¯ãã®æåããèªåãã§ãã¯ãå®è£ ããŸããããã«ãããã³ãŒãã£ã³ã°èŠçŽã確ç«ãããæªãç¿æ £ã圢æãããã®ãé²ããŸãã
- ãªã¹ã¯ã®é«ãé åã«çŠç¹ãåœãŠãïŒ å ¥åæ€èšŒãããŒã¿åŠçãèªèšŒãªã©ããã°ãã»ãã¥ãªãã£ã®è匱æ§ãå«ãå¯èœæ§ãæãé«ãã³ãŒãé åã®èªåãã§ãã¯ãåªå ããŸãã
- ã«ãŒã«ãã«ã¹ã¿ãã€ãºããïŒ ãããžã§ã¯ãåºæã®èŠä»¶ãã³ãŒãã£ã³ã°ã¹ã¿ã€ã«ã«åãããŠã«ãŒã«ãšåºæºã調æŽããŸããã³ãŒãããŒã¹ã«é¢é£ããªãå¯èœæ§ã®ããäžè¬çãªã«ãŒã«ã®äœ¿çšã¯é¿ããŠãã ããã
- 誀æ€ç¥ãæå°éã«æããïŒ èªåãã§ãã¯ããŒã«ãæ éã«èšå®ããå¿ èŠã«å¿ããŠã«ãŒã«ã調æŽããããšã§ã誀æ€ç¥ïŒèª€ã£ãŠãã©ã°ãç«ãŠãããåé¡ïŒã®æ°ãæžãããŸãã誀æ€ç¥ã¯éçºè ã®æéãæµªè²»ããããŒã«ãžã®ä¿¡é Œãæãªãå¯èœæ§ããããŸãã
- æç¢ºãªèª¬æãæäŸããïŒ èªåãã§ãã¯ããŒã«ãæ€åºããåé¡ã«ã€ããŠãæç¢ºã§æçãªèª¬æãæäŸããããšã確èªããŸããããã«ãããéçºè ã¯åé¡ãçè§£ããä¿®æ£æ¹æ³ãææ¡ã§ããŸãã
- ååã奚å±ããïŒ éçºè ãšã»ãã¥ãªãã£å°éå®¶ã®éã®ååæåãè²ã¿ãèªåãã§ãã¯ãæœåšçãªãªã¹ã¯ã«å¹æçã«å¯ŸåŠããŠããããšã確èªããŸãã
- 鲿ã远跡ããïŒ æéã®çµéãšãšãã«èªåãã§ãã¯ã®çµæãç£èŠããã³ãŒãå質ãšã»ãã¥ãªãã£ã®æ¹åã«ããã鲿ã远跡ããŸããæ€åºãããåé¡ã®æ°ãåé¡ã®ä¿®æ£ã«ãããæéãå šäœçãªã³ãŒãå質ã¹ã³ã¢ãªã©ã®ææšã䜿çšããŸãã
- ãã¹ãŠãèªååããïŒ èªåãã§ãã¯ã®å®è¡ãã¬ããŒãã®çæãéç¥ã®éä¿¡ãªã©ãã³ãŒãã¬ãã¥ãŒããã»ã¹ãå¯èœãªéãèªååããŸããããã«ãããæäœæ¥ãæžããã³ãŒããäžè²«ããŠã¬ãã¥ãŒãããããã«ãªããŸãã
èªåã³ãŒãã¬ãã¥ãŒã«é¢ããã°ããŒãã«ãªèæ ®äºé
ã°ããŒãã«ãªéçºããŒã ãšäœæ¥ããå Žåãæ¬¡ã®ç¹ãèæ ®ããããšãéèŠã§ãïŒ
- èšèªãµããŒãïŒ èªåãã§ãã¯ããŒã«ãããŒã ã¡ã³ããŒã䜿çšãããã¹ãŠã®èšèªããµããŒãããŠããããšã確èªããŸããèšèªã«äŸåããªãããŸãã¯æ°ããèšèªããµããŒãããããã«ç°¡åã«æ¡åŒµã§ããããŒã«ã®äœ¿çšãæ€èšããŠãã ããã
- ã¿ã€ã ãŸãŒã³ïŒ èªåãã§ãã¯ãã¹ã±ãžã¥ãŒã«ãããããã£ãŒãããã¯ãæäŸãããããéã«ã¯ãç°ãªãã¿ã€ã ãŸãŒã³ã«æ³šæããŠãã ãããå€åæéå€ã«éç¥ãéä¿¡ããããšã¯é¿ããŠãã ããã
- æåã®éãïŒ ã³ãŒãã£ã³ã°ã¹ã¿ã€ã«ãã³ãã¥ãã±ãŒã·ã§ã³ã«ãããæåçãªéãã«æ³šæããŠãã ããããªãŒãã³ãªã³ãã¥ãã±ãŒã·ã§ã³ãšååã奚å±ããå šå¡ãåãèªèãæã€ããã«ããŸãã
- ã¢ã¯ã»ã·ããªãã£ïŒ èªåãã§ãã¯ããŒã«ãšã¬ããŒãããå Žæãèšèªã«é¢ä¿ãªãããã¹ãŠã®ããŒã ã¡ã³ããŒã«ãšã£ãŠã¢ã¯ã»ã¹å¯èœã§ããããšã確èªããŸãã
- ã»ãã¥ãªãã£ïŒ æ©å¯æ§ã®é«ãã³ãŒããšããŒã¿ãä¿è·ããããã«ã匷åãªã»ãã¥ãªãã£å¯Ÿçãå®è£ ããŸããããã«ã¯ãå®å šãªéä¿¡ãã£ãã«ã®äœ¿çšãä¿åããŒã¿ã®æå·åãèªåãã§ãã¯ããŒã«ãžã®ã¢ã¯ã»ã¹ã®å¶åŸ¡ãå«ãŸããŸãã
äŸïŒã°ããŒãã«ã«åæ£ããããŒã ã§SonarQubeã䜿çšããå Žåãè€æ°ã®èšèªããµããŒãããããã«èšå®ããSlackãMicrosoft Teamsãªã©ã®æ¢åã®ã³ãã¥ãã±ãŒã·ã§ã³ãã£ãã«ãšçµ±åã§ããŸãããŸããSonarQubeã®ã¬ããŒãæ©èœã䜿çšããŠãç°ãªãããŒã éã®é²æã远跡ããæ¹åç¹ãç¹å®ããããšãã§ããŸãã
çµè«
èªåãã§ãã¯ã¯ãçŸä»£ã®ã³ãŒãã¬ãã¥ãŒãã©ã¯ãã£ã¹ã®äžå¯æ¬ ãªèŠçŽ ã§ããå¹çãé«ããã³ãŒãå質ãåäžããããªã¹ã¯ãäœæžããã»ãã¥ãªãã£ã匷åããŸããèªåãã§ãã¯ãéçºã¯ãŒã¯ãããŒã«çµ±åãããã¹ããã©ã¯ãã£ã¹ã«åŸãããšã§ããœãããŠã§ã¢ã®å質ãšä¿¡é Œæ§ãå€§å¹ ã«åäžãããããšãã§ããŸãã
èªååã®åãæŽ»çšããéçºè ãããè¯ãã³ãŒããããéãæžããããã«æ¯æŽããŸãããããœãããŠã§ã¢ã®ç¶æ³ãé²åãç¶ããäžã§ãèªåã³ãŒãã¬ãã¥ãŒã¯ãé«å質ã§å®å šããã€ä¿å®å¯èœãªã¢ããªã±ãŒã·ã§ã³ãæäŸããäžã§éèŠãªèŠçŽ ã§ããç¶ããŸãã